package jm.nj.demo05mian.Demo05;

/*
 * 需求:定义方法传递成绩,计算成绩的平均数,如果成绩有负数,需要抛出异常,停止运算
 * */
public class Demo {
    public static void main(String[] args)  {
        int[] arr = {88, 45, 454, 154, 4, -20, 66};
        int avg = 0;


            avg = getAvg(arr);

        System.out.println("avg:" + avg);

    }

    private static int getAvg(int[] arr) throws FenShuException {
        int sum = 0;
        for (int i = 0; i < arr.length; i++) {
            //对传递的成绩进行判断如果成绩有负数,需要抛出异常,停止运算
            if (arr[i] < 0) {
                /*
                 * 方法内部抛出了编译异常
                 * 方法上必须声明
                 * 方法的调用者必须处理
                 */
                throw new FenShuException("分数出现负数:"+arr[i]+"第"+(i+1)+"个");
            }
            sum += arr[i];
        }
        //avg
        int avg = sum / arr.length;
        return avg;
    }
}
